package org.dromara.dao.business.domain;


import io.swagger.v3.oas.annotations.media.Schema;
import org.dromara.common.mybatis.core.domain.BaseDomain;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;
import java.time.LocalDateTime;

/**
 * 智能体用户配置表对象 smart_agent_setting
 *
 *
 * @date 2025-01-13 14:07:34
 */
@Schema(description = "智能体用户配置表")
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("smart_agent_setting")
public class SmartAgentSetting extends BaseDomain {

    @Serial
    private static final long serialVersionUID = 1L;
    /**
    * 字段 [id]: ID
    */
    @Schema(description = "ID")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;


    /**
     * 字段 [agent_id]: 智能体ID
     */
    @Schema(description = "智能体ID")
    @TableField(value = "agent_id")
    private Long agentId;

    /**
     * 字段 [user_id]: 用户ID
     */
    @Schema(description = "用户ID")
    @TableField(value = "user_id")
    private Long userId;

    /**
     * 字段 [network_switch]: 是否允许全网搜索
     */
    @Schema(description = "是否允许全网搜索")
    @TableField(value = "network_switch")
    private Boolean networkSwitch;

    /**
     * 字段 [image_switch]: 是否开启图像生成
     */
    @Schema(description = "是否开启图像生成 ")
    @TableField(value = "image_switch")
    private Boolean imageSwitch;

    /**
     * 字段 [data_switch]: 是否开户数据分析
     */
    @Schema(description = "是否开户数据分析")
    @TableField(value = "data_switch")
    private Boolean dataSwitch;


    @Schema(description = "最后一次会话时间")
    @TableField(value = "last_chat_time")
    private LocalDateTime lastChatTime;

    @Schema(description = "是否置顶")
    @TableField(value = "top")
    private Boolean top;

}
